/************************************************************************/
/* 
	Lame mp3 audio codec class 
	author pengl
	date 2008-11-26
*/
/************************************************************************/
#pragma once

#include "common.h"
 
/************************************************************************/
/* mp3lame opts setting                                                                     */
/************************************************************************/
typedef struct lameopts {
	int lame_param_quality;		//range 0--9, 0 is best
	int lame_param_vbr;			//flag, vbr:cbr:abr
	int lame_param_mode;		//range 0-MAX_INDICATOR
	int lame_param_br;			//range 0-1024
	int lame_param_vol;			//volume 0-10
}lameopts,*Plameopts;

/************************************************************************/
/* lame vbr setting values                                                                     */
/************************************************************************/
enum VBR_LAME {
	lame_VBR,
	lame_CBR,
	lame_ABR
};




/************************************************************************/
/*
		lame class  
		-oac mp3lame -lameopts mode=3:cbr:br=128
		-oac mp3lame -lameopts 
		
		/new version 
		mp3lame -lameopts cbr:br=128:mode=0:vol=2:aq=3
*/
/************************************************************************/
class MPLAYER_API ClameOpts
{
public:
	ClameOpts(void);
	~ClameOpts(void);

	char *get_myname();
	void set_lameopts(Plameopts opts);
	char *get_lameopts();
protected:
	lameopts m_lameopts;
};
